package com.xxxtea.dto;

import com.xxxtea.entity.OrderItem;
import lombok.Data;

import java.util.List;

/**
 * 订单请求数据传输对象
 *
 * 用于接收前端提交的订单创建请求，包括：
 * - 订单基本信息（备注、收货地址等）
 * - 订单商品列表
 * - 业务类型标识
 *
 * 使用Lombok注解简化代码
 *
 * @author badman
 * @since 1.0.0
 */
@Data
public class OrderRequest {
	/**
	 * 订单备注
	 * 用户下单时的备注信息
	 */
	private String remark;
	
	/**
	 * 收货地址ID
	 * 关联用户地址表
	 */
	private Integer addressId;
	
	/**
	 * 订单商品列表
	 * 包含商品ID、数量等信息
	 */
	private List<ProductItem> items;
	
	/**
	 * 业务类型
	 * 默认为菜品类型
	 * 用于区分不同类型的订单（菜品、旧物等）
	 */
	private OrderItem.BusinessType businessType = OrderItem.BusinessType.DISH;
}
